Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Get Replay running again #13885

Merged
merged 4 commits into from
Sep 15, 2020
Merged

Conversation

peterbarker
Copy link
Contributor

This is a small-effort attempt to get Replay running in the form that it has traditionally run in, feeding sensor data in from our existing BARO, GPS messages etc.

It does run, and does reproduce both successful replication of a flight and at least one (justifiable!) FPE.

Future work will look at changing Replay to log input to the EKFs as separate messages which should give us a less-prone-to-break tool.

@tridge
Copy link
Contributor

tridge commented May 20, 2020

thanks for the work on this!

@peterbarker peterbarker force-pushed the pr/replay-at-least-runs branch 2 times, most recently from b30771d to a31db11 Compare July 7, 2020 23:30
@peterbarker peterbarker force-pushed the pr/replay-at-least-runs branch 2 times, most recently from 87bbbc7 to 47481be Compare August 20, 2020 01:51
@peterbarker peterbarker force-pushed the pr/replay-at-least-runs branch 3 times, most recently from e44798f to dd9ca9e Compare September 6, 2020 06:52
Replay: tear down threads before exitting

NKQ is a generated name - don't copy it across to output

Stop whinging about presence of NKF6 and friends; we know these generated names are not going to be present in modern logs

memcpy rather than strncpy within log_FMT

Correct strings vs optionally-terminated structure entries in sanity checks

Call AP_Param::load_all() to start the parameter saving thread.  AP_Compass' init() method now saves parameters (compass reordering), and because we're disarmed we will block until the parameter is pushed onto the to-save queue; if there's no thread popping off that list we block indefinitely.

Remove duplicate definitions of various singleton objects.

Replay: write out GPS message to output log

Useful for diagnosis, but also because we struggle to find a time base
without this and the pymavlink tools take forever to work

Replay: set COMPASS_DEV_ID and COMPASS_PRIO1_ID so EKF gets mag data

Replay: avoid use of system clock; use stopped-clock only

Replay: constraint to emitting output for single core only
We haven't initialised the GCS at all, so it's not a great idea to
update_receive() and the like.
Also don't compile in the stop_clock symbol to make it clear changes in
this method won't affect vehicles
@tridge tridge merged commit 4ebde78 into ArduPilot:master Sep 15, 2020
@peterbarker peterbarker deleted the pr/replay-at-least-runs branch September 15, 2020 06:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants